package com.zyf.project.kvdb.protocol.proto;

import com.zyf.project.binaryproto.annotation.DataContract;
import com.zyf.project.binaryproto.annotation.DataField;
import com.zyf.project.binaryproto.type.PrimitiveType;
import com.zyf.project.kvdb.protocol.constants.Constants;

/**
 * <h1>数据库集群配置项</h1>
 *
 * @author Zhou Yifan
 */
@DataContract(code = Constants.CLUSTER_ITEM)
public interface ClusterItem {

    /**
     * 配置名
     *
     * @return 配置名
     */
    @DataField(order = 0, primitiveType = PrimitiveType.TEXT)
    String getName();

    /**
     * 配置的 URL 字符串数组
     *
     * @return 字符串数组
     */
    @DataField(order = 1, list = true, primitiveType = PrimitiveType.TEXT)
    String[] getURLs();

}
